Skip to content

chore: migrate to dappco.re import paths#2

Merged
Snider merged 7 commits intomainfrom
dev
Mar 22, 2026
Merged

chore: migrate to dappco.re import paths#2
Snider merged 7 commits intomainfrom
dev

Conversation

@Snider
Copy link
Contributor

@Snider Snider commented Mar 22, 2026

Migrate module path and dependencies to dappco.re/go/core/*.

Summary by CodeRabbit

Release Notes

  • Chores
    • Set up GitHub Actions for continuous integration, automated testing, and code review workflows
    • Migrated internal module dependencies to new package registry across the codebase
    • Updated project configuration for build processes and dependency management

Snider and others added 7 commits March 17, 2026 14:05
Uses dAppCore/build actions for test, auto-fix on CodeRabbit changes,
and auto-merge on CodeRabbit approval.

Co-Authored-By: Virgil <[email protected]>
Update module path from forge.lthn.ai/core/go-html to dappco.re/go/core/html.
Migrate all .go import paths, update dependency versions (core v0.5.0,
log v0.1.0, io v0.2.0), and add replace directives for local development.

Co-Authored-By: Virgil <[email protected]>
…orge.lthn.ai to dappco.re ...' (#3) from agent/update-go-mod-require-lines-from-forge-l into main
@coderabbitai
Copy link

coderabbitai bot commented Mar 22, 2026

📝 Walkthrough

Walkthrough

This pull request migrates package dependencies from the forge.lthn.ai namespace to the dappco.re/go namespace. The module path in go.mod is updated along with all import statements throughout the codebase. A GitHub Actions CI workflow is added with test and automation jobs.

Changes

Cohort / File(s) Summary
Module and dependency configuration
go.mod, CLAUDE.md
Module path migrated from forge.lthn.ai/core/go-html to dappco.re/go/core/html; dependencies updated with version bumps and local replace directives for core packages.
Repository and build configuration
.gitignore, .github/workflows/ci.yml
Added GitHub Actions CI workflow with test, auto-fix, and auto-merge jobs triggered on push, pull request, and review events; updated .gitignore entries to ignore .vscode/, *.log, and .core/.
i18n package migration
bench_test.go, context.go, edge_test.go, integration_test.go, node.go, node_test.go, pipeline.go, pipeline_test.go, render_test.go
Updated i18n import from forge.lthn.ai/core/go-i18n to dappco.re/go/core/i18n across test and implementation files.
Logging and codegen package migration
codegen/codegen.go, cmd/codegen/main.go, cmd/wasm/register.go
Updated log and codegen imports from forge.lthn.ai/core/go-log and forge.lthn.ai/core/go-html/codegen to dappco.re/go/core/log and dappco.re/go/core/html/codegen.
HTML and IO package migration
cmd/wasm/main.go, cmd/wasm/size_test.go
Updated html and io package imports from forge.lthn.ai/core/go-html and forge.lthn.ai/core/go-io to dappco.re/go/core/html and dappco.re/go/core/io.
🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title accurately summarizes the main change: migrating module and import paths from forge.lthn.ai to dappco.re across all files.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 golangci-lint (2.11.3)

Error: can't load config: unsupported version of the configuration: "" See https://golangci-lint.run/docs/product/migration-guide for migration instructions
The command is terminated due to an error: can't load config: unsupported version of the configuration: "" See https://golangci-lint.run/docs/product/migration-guide for migration instructions


Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🧹 Nitpick comments (1)
CLAUDE.md (1)

43-46: Consider updating clone instructions for migrated repositories.

Line 46 states both go-i18n and go-inference must be cloned alongside this repo. Since go-i18n has been migrated to dappco.re/go/core/i18n, the clone instructions may need to reflect the new repository location (if it has moved), or clarify which repo URL to use.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@CLAUDE.md` around lines 43 - 46, The CLAUDE.md clone instructions are out of
date: the doc still tells contributors to clone `go-i18n` and `go-inference`
alongside this repo and references `go-i18n` as an external repo, while the
package now appears as `dappco.re/go/core/i18n`; update the instructions to list
the correct repository locations and names (e.g., replace or clarify `go-i18n`
with `dappco.re/go/core/i18n` and confirm whether `go-inference` remains at
`forge.lthn.ai/core/go-inference`), and explicitly state which repo URLs to
clone or whether a replace directive in go.mod removes the need to clone locally
(mention `dappco.re/go/core/i18n`, `go-inference`, and any replace directives)
so readers know the exact repositories or steps required to build.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.github/workflows/ci.yml:
- Around line 23-26: The CI workflow's conditional for auto-fix/auto-merge is
missing a base-branch guard; update the 'if' expressions used (the blocks
checking github.event_name, github.event.review.user.login,
github.event.review.state) to also require github.event.pull_request.base.ref ==
'main' so the actions only run for PRs targeting main; apply this same addition
to both occurrences of that 'if' condition (the first block around the
auto-fix/auto-merge steps and the second similar block later in the file).
- Line 17: The workflow is using mutable action refs (`@dev`) which must be
pinned; update both occurrences of the reusable action reference (the step that
uses dAppCore/build/actions/build/core in the normal build job and the one in
the auto-fix job) to use full immutable commit SHAs instead of `@dev` — locate the
two steps referencing "dAppCore/build/actions/build/core@dev" and replace `@dev`
with the corresponding full commit SHA for each reference so the workflow uses
pinned action versions.

In `@go.mod`:
- Around line 22-27: The CI fails because the replace directives block (replace
(...) containing dappco.re/go/core => ../../../../core/go and the related
dappco.re/go/core/i18n, /io, /log entries) points to local relative paths that
don't exist in the runner; either remove these replace directives before merging
so the published dappco.re/go/core modules are used, or update CI to checkout
the sibling repos into the same relative paths before running go mod download,
or move these local replaces into a separate local-only file (e.g.,
go.mod.local) and ensure CI uses the canonical go.mod with no local replaces.

---

Nitpick comments:
In `@CLAUDE.md`:
- Around line 43-46: The CLAUDE.md clone instructions are out of date: the doc
still tells contributors to clone `go-i18n` and `go-inference` alongside this
repo and references `go-i18n` as an external repo, while the package now appears
as `dappco.re/go/core/i18n`; update the instructions to list the correct
repository locations and names (e.g., replace or clarify `go-i18n` with
`dappco.re/go/core/i18n` and confirm whether `go-inference` remains at
`forge.lthn.ai/core/go-inference`), and explicitly state which repo URLs to
clone or whether a replace directive in go.mod removes the need to clone locally
(mention `dappco.re/go/core/i18n`, `go-inference`, and any replace directives)
so readers know the exact repositories or steps required to build.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: d969c740-385b-49fd-98aa-b2a4eac455b7

📥 Commits

Reviewing files that changed from the base of the PR and between ba26232 and b3f6229.

⛔ Files ignored due to path filters (1)
  • go.sum is excluded by !**/*.sum
📒 Files selected for processing (18)
  • .github/workflows/ci.yml
  • .gitignore
  • CLAUDE.md
  • bench_test.go
  • cmd/codegen/main.go
  • cmd/wasm/main.go
  • cmd/wasm/register.go
  • cmd/wasm/size_test.go
  • codegen/codegen.go
  • context.go
  • edge_test.go
  • go.mod
  • integration_test.go
  • node.go
  • node_test.go
  • pipeline.go
  • pipeline_test.go
  • render_test.go

runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dAppCore/build/actions/build/core@dev
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Verify non-SHA action refs across workflows.
rg -nP '^\s*-\s*uses:\s*[^@]+@(?![0-9a-fA-F]{40}$).+$' .github/workflows

Repository: dAppCore/go-html

Length of output: 398


🏁 Script executed:

cat -n .github/workflows/ci.yml

Repository: dAppCore/go-html

Length of output: 1829


Pin action refs to immutable commit SHAs.

Using @dev for reusable actions makes workflow behaviour mutable and increases supply-chain risk. This is particularly critical for line 36 in the auto-fix job, which has explicit write permissions and can modify repository state. Pin both references to full commit SHAs.

Suggested patch
       - uses: dAppCore/build/actions/build/core@dev
+      - uses: dAppCore/build/actions/build/core@<full_commit_sha>

       - uses: dAppCore/build/actions/fix@dev
+      - uses: dAppCore/build/actions/fix@<full_commit_sha>

Also applies to: 36-36

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/ci.yml at line 17, The workflow is using mutable action
refs (`@dev`) which must be pinned; update both occurrences of the reusable action
reference (the step that uses dAppCore/build/actions/build/core in the normal
build job and the one in the auto-fix job) to use full immutable commit SHAs
instead of `@dev` — locate the two steps referencing
"dAppCore/build/actions/build/core@dev" and replace `@dev` with the corresponding
full commit SHA for each reference so the workflow uses pinned action versions.

Comment on lines +23 to +26
if: >
github.event_name == 'pull_request_review' &&
github.event.review.user.login == 'coderabbitai' &&
github.event.review.state == 'changes_requested'
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

Scope auto-fix and auto-merge to PRs targeting main.

Current conditions only check event/reviewer/state. Add a base-branch guard to avoid write actions on PRs targeting other branches.

Suggested patch
   auto-fix:
     if: >
       github.event_name == 'pull_request_review' &&
+      github.event.pull_request.base.ref == 'main' &&
       github.event.review.user.login == 'coderabbitai' &&
       github.event.review.state == 'changes_requested'
@@
   auto-merge:
     if: >
       github.event_name == 'pull_request_review' &&
+      github.event.pull_request.base.ref == 'main' &&
       github.event.review.user.login == 'coderabbitai' &&
       github.event.review.state == 'approved'

Also applies to: 41-44

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/ci.yml around lines 23 - 26, The CI workflow's conditional
for auto-fix/auto-merge is missing a base-branch guard; update the 'if'
expressions used (the blocks checking github.event_name,
github.event.review.user.login, github.event.review.state) to also require
github.event.pull_request.base.ref == 'main' so the actions only run for PRs
targeting main; apply this same addition to both occurrences of that 'if'
condition (the first block around the auto-fix/auto-merge steps and the second
similar block later in the file).

Comment on lines +22 to +27
replace (
dappco.re/go/core => ../../../../core/go
dappco.re/go/core/i18n => ../../../../core/go-i18n
dappco.re/go/core/io => ../../../../core/go-io
dappco.re/go/core/log => ../../../../core/go-log
)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

Replace directives break CI builds.

The pipeline failure indicates that the local paths in these replace directives (e.g., ../../../../core/go) do not exist in the CI environment. This causes go mod download to fail.

Consider one of the following approaches:

  1. Remove replace directives before merging to main and ensure the dappco.re/go/core/* modules are published/accessible.
  2. Update the CI workflow to clone the sibling repositories to the expected relative paths before running go mod download.
  3. Use a go.mod.local pattern where replace directives are kept in a separate file for local development only.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@go.mod` around lines 22 - 27, The CI fails because the replace directives
block (replace (...) containing dappco.re/go/core => ../../../../core/go and the
related dappco.re/go/core/i18n, /io, /log entries) points to local relative
paths that don't exist in the runner; either remove these replace directives
before merging so the published dappco.re/go/core modules are used, or update CI
to checkout the sibling repos into the same relative paths before running go mod
download, or move these local replaces into a separate local-only file (e.g.,
go.mod.local) and ensure CI uses the canonical go.mod with no local replaces.

@Snider Snider merged commit 0799d98 into main Mar 22, 2026
8 of 10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant